home *** CD-ROM | disk | FTP | other *** search
/ Libris Britannia 4 / science library(b).zip / science library(b) / ELECTRON / 1009.ZIP / HAM1.ARC / INTERMOD.BAS < prev    next >
BASIC Source File  |  1986-05-23  |  1KB  |  62 lines

  1. 10 REM INTERMOD FREQUENCY CALCULATION
  2. 20 REM J M HOWELL
  3. 30 CLS
  4. 40 PRINT
  5. 50 PRINT TAB(5);"INTERMODULATION PRODUCTS"
  6. 60 PRINT
  7. 70 PRINT"HOW MANY SIGNALS?"
  8. 80 INPUT NS
  9. 90 IF NS<2 OR NS>4 THEN GOTO 70
  10. 100 PRINT"ENTER THE FREQUENCIES"
  11. 110 IF NS=2 THEN INPUT F1,F2
  12. 120 IF NS=3 THEN INPUT F1,F2,F3
  13. 130 IF NS=4 THEN INPUT F1,F2,F3,F4
  14. 140 PRINT"ENTER OBSERVED FREQUENCY RANGE"
  15. 150 INPUT FA,FB
  16. 160 IF FA>FB THEN GOTO 140
  17. 170 PRINT"HIGHEST ORDER PRODUCT"
  18. 180 INPUT H
  19. 190 IF H<1 THEN GOTO 170
  20. 200 IF NS=2 THEN T=6+3*H
  21. 210 IF NS=3 THEN T=7+H*(6+H*2)
  22. 220 IF NS=4 THEN T=8+H*(8+H*(4+H))
  23. 230 PRINT"THIS WILL TAKE ABOUT ";INT(T*H/90)+1 " SECONDS"
  24. 240 FL=0
  25. 250 FK=0
  26. 260 FOR G=1 TO H
  27. 270 PRINT
  28. 280 PRINT"ORDER = ";G
  29. 290 LET JM=G
  30. 300 LET KM=G
  31. 310 ON NS-1 GOSUB 500,440,380
  32. 320 NEXT G
  33. 330 PRINT
  34. 340 PRINT"CALCULATION COMPLETE - RUN AGAIN? (Y/N)"
  35. 350 INPUT A$
  36. 360 IF A$="Y" THEN GOTO 30
  37. 370 STOP
  38. 380 FOR L=-G TO G
  39. 390 FL=F4*L
  40. 400 KM=G-ABS(L)
  41. 410 GOSUB 440
  42. 420 NEXT L
  43. 430 RETURN
  44. 440 FOR K=-KM TO KM
  45. 450 FK=FL+K*F3
  46. 460 JM=KM-ABS(K)
  47. 470 GOSUB 500
  48. 480 NEXT K
  49. 490 RETURN
  50. 500 FOR J=-JM TO JM
  51. 510 I=JM-ABS(J)
  52. 520 F=FK+J*F2+I*F1
  53. 530 IF FA>ABS(F) OR ABS(F)>FB THEN GOTO 600
  54. 540 IF F=0 OR I=0 AND F<0 THEN GOTO 600
  55. 550 Z=ABS(F)/F
  56. 560 PRINT Z*F;TAB(15);Z*I;TAB(19);Z*J;
  57. 570 IF NS>2 THEN PRINT TAB(23);Z*K;
  58. 580 IF NS=4 THEN PRINT TAB(27);Z*L;
  59. 590 PRINT
  60. 600 NEXT J
  61. 610 RETURN
  62.